home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / prgtools / programm.ing / rcs56.zoo / rcs / src / makefile.st < prev    next >
Encoding:
Makefile  |  1993-02-07  |  6.8 KB  |  246 lines

  1. # $Id: Makefile,v 5.16 1991/10/07 17:32:46 eggert Exp $
  2. # Copyright (C) 1982, 1988, 1989 Walter Tichy
  3. # Copyright 1990, 1991 by Paul Eggert
  4. #   Distributed under license by the Free Software Foundation, Inc.
  5. #
  6. # This file is part of RCS.
  7. #
  8. # RCS is free software; you can redistribute it and/or modify
  9. # it under the terms of the GNU General Public License as published by
  10. # the Free Software Foundation; either version 2, or (at your option)
  11. # any later version.
  12. #
  13. # RCS is distributed in the hope that it will be useful,
  14. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. # GNU General Public License for more details.
  17. #
  18. # You should have received a copy of the GNU General Public License
  19. # along with RCS; see the file COPYING.  If not, write to
  20. # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  21. #
  22. # Report problems and direct all questions to:
  23. #
  24. #    rcs-bugs@cs.purdue.edu
  25. #
  26.  
  27. # default target
  28. default :: all
  29.  
  30. # See README for more information on the configuration section.
  31. # ----- start of configuration section -----
  32.  
  33. #(Unix
  34.  
  35. #CC = cc
  36. #CC = bsdcc -qlanglvl=ansi# AIX
  37. #CC = cc -g# debug
  38. CC = gcc -g -z -DFGTH_PORT# GCC
  39.  
  40.  CC_D =
  41.  
  42.  CC_O = -O
  43. #CC_O =# debug
  44. #CC_O = -O -R# BSD compilers that do not support `const'
  45. #CC_O = -O -fdelayed-branch -finline-functions -fomit-frame-pointer -fstrength-reduce# GCC options for brave souls
  46.  
  47.  CC_W =
  48. #CC_W = -Wall -Wcast-qual -Wpointer-arith -Wshadow -Wwrite-strings# GCC
  49.  
  50.  CFLAGS = $(CC_D) $(CC_O) $(CC_W)
  51.  
  52.  COMPAT2 = 0
  53. #COMPAT2 = 1
  54.  
  55.  DIFF = $(DIFFPREFIX)diff
  56. #DIFF = $(DIFFPREFIX)rdiff# short for ``RCS diff'' on some hosts
  57.  
  58.  DIFFPREFIX = /usr/local/gnu/# GNU diff -- must be version 1.15 or later
  59. #DIFFPREFIX = /bin/# traditional diff
  60. #DIFFPREFIX = /usr/bin/# traditional diff (alternate name)
  61.  
  62.  DIFF_FLAGS = -an# GNU diff
  63. #DIFF_FLAGS = -n# traditional diff
  64.  
  65.  DIFF_L = 1# GNU diff
  66. #DIFF_L = 0# traditional diff
  67.  
  68.  DIFF_SUCCESS = 0
  69. #DIFF_SUCCESS = EXIT_SUCCESS
  70.  DIFF_FAILURE = 1
  71. #DIFF_FAILURE = EXIT_FAILURE
  72.  DIFF_TROUBLE = 2
  73. #DIFF_TROUBLE = (EXIT_FAILURE*2)
  74.  
  75.  DIFF3 = $(DIFF)3# GNU diff3
  76. #DIFF3 = /usr/lib/diff3# traditional diff3
  77. #DIFF3 = /usr/5lib/diff3prog# other aliases for traditional diff3
  78. #DIFF3 = /usr/lib/diff3prog
  79. #DIFF3 = /usr/lib/rdiff3
  80.  
  81.  DIFF3_BIN = 1# GNU diff
  82. #DIFF3_BIN = 0# traditional diff
  83.  
  84.  ED = /bin/ed
  85.  
  86.  EXECUTABLE_GROUP = staff# BSD unix installation
  87.  EXECUTABLE_PERMISSIONS = -g $(EXECUTABLE_GROUP) -m 775# BSD unix installation
  88. #INSTALL = install -c $(EXECUTABLE_PERMISSIONS)# BSD unix installation
  89. INSTALL = cp# traditional Unix installation
  90.  
  91.  LDFLAGS =
  92.  
  93.  LDLIBS = -liio
  94.  
  95.  LINK = $(CC) $(LDFLAGS)
  96.  
  97.  LINT = lint -abchx# traditional and BSD lint
  98. #LINT = lint# System V lint
  99.  
  100.  MAKE = make
  101.  
  102.  OTHER_OBJECT = stack.o#system.o
  103.  
  104.  RCSDIR = /dev/h/bin
  105. #RCSDIR = /bin
  106. #RCSDIR = /usr/bin
  107.  
  108.  RCSPREFIX = $(RCSDIR)/
  109. #RCSPREFIX =
  110.  
  111.  REMOVE = rm -f
  112.  
  113.  SENDMAIL = "/bin/mail"
  114. #SENDMAIL = "/etc/delivermail", "-w"
  115. #SENDMAIL = "/usr/bin/mail"
  116. #SENDMAIL = "/usr/lib/sendmail"
  117. #SENDMAIL = "mail"
  118. #SENDMAIL =# for impoverished hosts that lack electronic mail
  119.  
  120.  TESTPREFIX =
  121.  
  122.  o = .o
  123. #o = .s# Minix/PC with ACK cc
  124.  
  125.  x = .ttp
  126.  x1 = .sym
  127.  
  128. #)
  129. # On non-Unix hosts you must manually create and edit conf.h from conf.heg.
  130.  
  131. # ----- end of configuration section -----
  132. # You shouldn't have to change anything past this point.
  133.  
  134.  
  135. # Avoid brain damage in some versions of 'make'.
  136. SHELL = /bin/sh
  137.  
  138. # all commands
  139. RCSCOMMANDS = ci$x co$x ident$x merge$x rcs$x rcsdiff$x rcsmerge$x rlog$x
  140.  
  141. all :: $(RCSCOMMANDS)
  142.  
  143. install :: all
  144.     -xstrip -k $(RCSCOMMANDS)
  145.     $(INSTALL) ci$x $(DESTDIR)$(RCSDIR)
  146.     $(INSTALL) co$x $(DESTDIR)$(RCSDIR)
  147.     $(INSTALL) ident$x $(DESTDIR)$(RCSDIR)
  148.     $(INSTALL) merge$x $(DESTDIR)$(RCSDIR)
  149.     $(INSTALL) rcs$x $(DESTDIR)$(RCSDIR)
  150.     $(INSTALL) rcsdiff$x $(DESTDIR)$(RCSDIR)
  151.     $(INSTALL) rcsmerge$x $(DESTDIR)$(RCSDIR)
  152.     $(INSTALL) rlog$x $(DESTDIR)$(RCSDIR)
  153.  
  154. # Install RCS and (if applicable) GNU diff before running these tests.
  155. # To test RCS before installing it, see README.
  156. RCSTEST = PATH=$(RCSDIR):$(DIFFPREFIX).:$$PATH sh $(TESTPREFIX)rcstest
  157. installtest ::
  158.     $(RCSTEST)
  159. installdebug ::
  160.     $(RCSTEST) -v
  161.  
  162. clean ::
  163.     $(REMOVE) a.* *$o conf.h conf.error $(RCSCOMMANDS) rcsclean$x
  164.  
  165. #(Unix
  166. conf.h : conf.sh Makefile
  167.     $(REMOVE) a.*
  168.     CC='$(CC)' CFLAGS='$(CFLAGS)' \
  169.     COMPAT2='$(COMPAT2)' \
  170.     DIFF3='$(DIFF3)' DIFF3_BIN='$(DIFF3_BIN)' \
  171.     DIFF='$(DIFF)' DIFF_FLAGS='$(DIFF_FLAGS)' DIFF_L='$(DIFF_L)' \
  172.     DIFF_SUCCESS='$(DIFF_SUCCESS)' DIFF_FAILURE='$(DIFF_FAILURE)' DIFF_TROUBLE='$(DIFF_TROUBLE)' \
  173.     ED='$(ED)' \
  174.     LDFLAGS='$(LDFLAGS)' LDLIBS='$(LDLIBS)' \
  175.     RCSPREFIX='$(RCSPREFIX)' \
  176.     SENDMAIL='$(SENDMAIL)' \
  177.     sh -x conf.sh >a.h 2>conf.error
  178.     mv a.h $@
  179.     $(REMOVE) a.*
  180. #)
  181.  
  182. ci = ci$o rcslex$o rcssyn$o rcsgen$o rcsedit$o rcskeys$o rcsmap$o \
  183.     rcsrev$o rcsutil$o rcsfnms$o partime$o maketime$o rcskeep$o \
  184.     rcsfcmp$o $(OTHER_OBJECT)
  185. ci$x : $(ci)
  186.     $(LINK) $(ci) $(LDLIBS) -o $@
  187. ci.sym : ci$x
  188.     sym-ld -o $@ d:/mint/lib/crt0.o $(ci) -lgnu -liio
  189.  
  190. co = co$o rcslex$o rcssyn$o rcsgen$o rcsedit$o rcskeys$o rcsmap$o \
  191.     rcsrev$o rcsutil$o rcsfnms$o partime$o maketime$o rcskeep$o $(OTHER_OBJECT)
  192. co$x : $(co)
  193.     $(LINK) $(co) $(LDLIBS) -o $@
  194.  
  195. ident = ident$o rcsmap$o $(OTHER_OBJECT)
  196. ident$x : $(ident)
  197.     $(LINK) $(ident) $(LDLIBS) -o $@
  198.  
  199. merge = merge$o merger$o rcsfnms$o rcslex$o \
  200.     rcsmap$o rcsrev$o rcssyn$o rcsutil$o \
  201.     rcskeep$o rcskeys$o $(OTHER_OBJECT)
  202. merge$x : $(merge)
  203.     $(LINK) $(merge) $(LDLIBS) -o $@
  204.  
  205. rlog = rlog$o rcslex$o rcsmap$o rcssyn$o rcsrev$o rcsutil$o partime$o \
  206.     maketime$o rcsfnms$o rcskeep$o rcskeys$o $(OTHER_OBJECT)
  207. rlog$x : $(rlog)
  208.     $(LINK) $(rlog) $(LDLIBS) -o $@
  209.  
  210. rcs = rcs$o rcslex$o rcssyn$o rcsrev$o rcsutil$o rcsgen$o rcsedit$o rcskeys$o \
  211.     rcsmap$o rcsfnms$o rcskeep$o $(OTHER_OBJECT)
  212. rcs$x : $(rcs)
  213.     $(LINK) $(rcs) $(LDLIBS) -o $@
  214.  
  215. rcsclean = rcsclean$o rcsedit$o rcsfcmp$o rcsfnms$o rcsgen$o rcskeys$o \
  216.     rcslex$o rcsmap$o rcsrev$o rcssyn$o rcsutil$o rcskeep$o $(OTHER_OBJECT)
  217. rcsclean$x : $(rcsclean)
  218.     $(LINK) $(rcsclean) $(LDLIBS) -o $@
  219.  
  220. rcsdiff = rcsdiff$o rcsutil$o rcsfnms$o rcsmap$o rcsrev$o rcssyn$o rcslex$o \
  221.     maketime$o partime$o rcskeep$o rcskeys$o $(OTHER_OBJECT)
  222. rcsdiff$x : $(rcsdiff)
  223.     $(LINK) $(rcsdiff) $(LDLIBS) -o $@
  224. rcsdiff$(x1): rcsdiff$x
  225.     sym-ld -o $@ $(GNULIB)/crt0.o $(rcsdiff) $(LDLIBS) -lgnu
  226.  
  227. rcsmerge = rcsmerge$o merger$o rcsutil$o rcsfnms$o rcsmap$o rcsrev$o rcssyn$o \
  228.     rcslex$o rcskeep$o rcskeys$o $(OTHER_OBJECT)
  229. rcsmerge$x : $(rcsmerge)
  230.     $(LINK) $(rcsmerge) $(LDLIBS) -o $@
  231.  
  232. SOURCE=    ci.c co.c ident.c maketime.c merge.c merger.c partime.c rcs.c \
  233.     rcsclean.c rcsdiff.c rcsedit.c rcsfcmp.c rcsfnms.c rcsgen.c \
  234.     rcskeep.c rcskeys.c rcslex.c rcsmap.c rcsmerge.c rcsrev.c rcssyn.c \
  235.     rcsutil.c rlog.c
  236. OBJECT=    ci$o co$o ident$o maketime$o merge$o merger$o partime$o rcs$o \
  237.     rcsclean$o rcsdiff$o rcsedit$o rcsfcmp$o rcsfnms$o rcsgen$o \
  238.     rcskeep$o rcskeys$o rcslex$o rcsmap$o rcsmerge$o rcsrev$o rcssyn$o \
  239.     rcsutil$o rlog$o
  240.  
  241. lint :: conf.h
  242.     $(LINT) $(CC_D) -Dlint=1 $(SOURCE)
  243.  
  244. conf_h = conf.h
  245. $(OBJECT) : $(conf_h) rcsbase.h
  246.